class Category < ActiveRecord::Base  
  
  has_many :blogs,:dependent=>false
  
  #返回默认相册
  def self.default_category
    Category.find(:first,:conditions=>["name=?","默认分类"])
  end
  
  #删除前将该分类博客转移到默认分类
  def before_destroy
    #TODO:可能存在性能问题，但是可以正确处理默认分类的博客数量
    #self.connection.update "update photos set album_id=#{Album.default_album.id} where album_id=#{self.id}"
    #Album.default_album.photos(:refresh)
    #TODO:可能存在性能问题，但是可以正确处理默认分类的博客数量
    the_default_category=Category.default_category
    self.blogs.each do |blog|
      blog.category=the_default_category
      blog.save
    end
    the_default_category.blogs(:refresh)
  end
  
end  